package com.pxl.springbootinit.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pxl.springbootinit.model.dto.task.TaskClaimForm;
import com.pxl.springbootinit.model.dto.task.TaskForm;
import com.pxl.springbootinit.model.entity.TaskClaim;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pxl.springbootinit.model.entity.User;
import com.pxl.springbootinit.model.vo.TaskClaimVO;

import java.util.List;

/**
* @author MADAO
* @description 针对表【task_claim(任务认领表)】的数据库操作Service
* @createDate 2024-12-20 11:59:03
*/
public interface TaskClaimService extends IService<TaskClaim> {

    Boolean claimTask(TaskClaimForm taskClaimForm, User user);

    List<TaskClaimVO> userClaimedTask(Long userId);

    Boolean cancelTask(Long taskId);

    Page<TaskClaimVO> pageTask(TaskForm taskForm);

    Boolean passTaskClaim(Long taskId);

    Boolean rejectTaskClaim(Long taskId);

    Page<TaskClaimVO> pageAdminTask(TaskForm taskForm);
}
